package com.jiawa.train.common.config;

import com.jiawa.train.common.interceptor.MemberInterceptor;
import jakarta.annotation.Resource;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

/**
 * Spring MVC 的配置类，用于注册拦截器等。
 */
@Configuration
public class CommonModuleWebMvcConfigurer implements WebMvcConfigurer {

    // 注入我们在 common 模块中定义的 MemberInterceptor
    @Resource
    MemberInterceptor memberInterceptor;

    /**
     * 重写 addInterceptors 方法，将我们的拦截器添加到拦截器链中。
     * @param registry 拦截器注册表
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        // 添加 MemberInterceptor
        registry.addInterceptor(memberInterceptor)
                // addPathPatterns("/**") 表示拦截所有路径的请求
                .addPathPatterns("/**");
    }

}
